Anzeigemodul mit VQC10

Ein Display mit LED-Punktmatrixanzeigen aus DDR-Zeiten. Leiterplatte mit folgenden Eigenschaften:

Für einen HD44780-kompatiblen Anschluss fehlten hier freie Pins.

Vor- und Nachteile

Gegenüber günstig (besonders bei Pollin) verfügbaren LCD-Anzeigemodulen besitzen derartige LED-Punktmatrixanzeigen folgende Vorteile:

Dem stehen folgende Nachteile gegenüber:

Verwendungsmöglichkeiten

Ein solches Anzeigemodul ist für Case-Modding viel zu schade. Auch für die reine Zifferndarstellung ist Punktmatrix übertrieben; Siebensegmentanzeigen sind besser ablesbar.

Ich denke da vielmehr an folgende Anwendungen:

Für die Kommunikation mit dem „zweiten“ Mikrocontroller bietet sich SPI oder I²C an. Dieses Modul implementiert Slave-SPI bzw. Slave-I²C, d. h. der „zweite“ Mikrocontroller muss (darf) den Takt vorgeben.

Schaltplan und Board-Layout

[Foto] Hier ist der Schaltplan als Vektorgrafik, Pixelgrafik oder xslt-prozessiert zu sehen.

Die Leiterplatte ebenso: Vektorgrafik Oberseite, Vektorgrafik Unterseite, Pixelgrafik Oberseite, Pixelgrafik Unterseite, xslt-prozessiert.

Die obere Reihe der Anzeigemodule wurde gestürzt angeordnet, um die beiden Textzeilen einander etwas näher zu bringen.

Die chaotische Zuordnung der Leitungen an den Mikrocontroller erleichterte die Entflechtung der Leiterplatte erheblich, verkompliziert hingegen die Firmware etwas. Alle 10 Katodenleitungen befinden sich jedoch an genau einem 16-bit-Port, PA (= P1 und P2), für eine schnelle Interruptserviceroutine.
Motto: Software ist billiger als Hardware!

Bekannte Konstruktionsfehler (2015)

Firmware

in Entwicklung

Der Anzeigeteil realisiert das Multiplexen der Anzeige mit nominell 100 Hz sowie einer Helligkeitsmodulation zur Darstellung hervorgehobener oder abgeschwächter Zeichen und Einzelpixel sowie zur Anpassung an die Umgebungshelligkeit. Jede der 7 Anodenzeilen wird bis zu 1,4 ms eingeschaltet. TODO: Zu Pausenzeiten werden auch die Strom fressenden VQC10-Latches abgeschaltet.

Intern arbeitet das Programm mit einer repräsentativen Bitmap (also Vollgrafik) mit 2 Ebenen (für 3 Helligkeitsstufen). Bei jeder Änderung wird diese Bitmap von der Hauptschleife in ein „Katoden-Array“ umgerechnet, die zum schnellen Multiplexen die Daten vorhält. Die Zeichendarstellung erfolgt durch Kopieren der Zeichenform (Font) in die Bitmap.

Der USB-Teil implementiert ein USB-HID-Gerät der "Alphanumeric Display Page" (0x14), also maximal USB-konform. Die Usage ist im Dokument "Universal Serial Bus HID Usage Tables" ab Seite 109 dokumentiert.

Geflasht wird die Firmware via eingebautem USB-Bootloader (BSL) und meiner Quick-And-Dirty-Version von msp430-usbbsl. Zum Aktivieren des Bootloaders Pin 51 (PUR) mit 3,3 V verbinden, dann Reset aktivieren (Pin 64 nach Masse) oder Strom zuschalten.